home *** CD-ROM | disk | FTP | other *** search
/ Mac-Source 1994 July / Mac-Source_July_1994.iso / Misc Utils / Dynamic Math 1.0.1 / DynamicMath.Int < prev   
Text File  |  1993-04-19  |  1KB  |  49 lines

  1. unit DynamicMath;
  2.  
  3. { Dynamic Math. A library to parse and interpret formulas during }
  4. { the programs execution time  }
  5. {}
  6. { © 1993 by Christian Franz }
  7.  
  8. interface
  9.  
  10.     const
  11.  
  12.         eClsExpected = -1; (* ")" expected *)
  13.         eOpnExpected = -2; (* "(" expected *)
  14.         eUnknownSymbol = -3; (* unknown function *)
  15.         eSyntaxError = -4; (* formula is wrong. usually missing '(' ')' around Expr *)
  16.  
  17. {$PUSH}
  18. {$J+}
  19.  
  20.     type
  21.     (* The Item object is just defined so your  *)
  22.     (* compiler doesn't gag on the Formula      *)
  23.     (* definition. Don't change or even use it! *)
  24.         Item = object (* don't ever mess with me *)
  25.                 thevalue: real;
  26.                 negate: boolean;
  27.                 function evaluate: real; (* no you don't *)
  28.             end;
  29.  
  30.         Formula = object
  31.                 structure: Item;
  32.                 function evaluate (x, y: real): real;
  33.         (* call me to evaluate parsed function *)
  34.             end;
  35.  
  36.     var
  37.         gPos: integer;
  38.  
  39. {$J-}
  40. {POP}
  41.  
  42.  
  43.     procedure Str2Text (s: Str255; var t: CharsHandle);
  44.  
  45.     function Parse (text: CharsHandle; var theFormula: Formula): Integer;
  46.  
  47. implementation
  48.  
  49. end.